Parallelism, Concurreny and Distribution in Constraint Handling Rules: A Survey (Draft)
نویسنده
چکیده
Constraint Handling Rules (CHR) is both an effective concurrent declarative programming language and a versatile computational logic formalism. CHR has its roots in constraint logic programming and concurrent constraint programming, but also integrates ideas from multiset transformation and rewriting systems. CHR programs consist of guarded reactive rules that transform multisets of constraints. One of the main features of CHR is its inherent concurrency. Intuitively, rules can be applied to parts of a multiset in parallel. In this comprehensive survey, we give an overview of concurrent and parallel as well as distributed CHR semantics, standard and more exotic, that have been proposed over the years at various levels of refinement. These semantics range from the abstract to the concrete. They are related by formal soundness results. Their correctness is established as a correspondence between parallel and sequential computations. On the more practical side, we present common concise sample CHR programs that have been widely used in experiments and benchmarks. We review parallel CHR implementations in software as well as hardware. The experimental results obtained show a consistent parallel speed-up. Most implementations are available online. Due to its high level of abstraction, the CHR formalism can also be used to implement and reason with models for concurrency. To this end, the Software Transaction Model, the Actor Model, Colored Petri Nets and the Join-Calculus have been faithfully encoded in CHR. Finally, we summarize the state of art and indicate what problems are left open for future research.
منابع مشابه
Efficient Compilation of Guarded Join-Patterns via Parallel Implementation of Constraint Handling Rules
Parallelism is going mainstream and the demand for programs that scales well with parallelism will become ever more stronger. Hence to develope parallel programs of increasing complexity, comprehensive and efficient high level concurrency abstractions would soon become a necessity in existing mainstream programming languages. Our approach extends from a promising high-level concurrency abstract...
متن کاملAs Time Goes By : Constraint Handling Rules A Survey of CHR Research from 1998 to 2007 JON
Constraint Handling Rules (CHR) is a high-level programming language based on multiheaded multiset rewrite rules. Originally designed for writing user-defined constraint solvers, it is now recognized as an elegant general purpose language. CHR-related research has surged during the decade following the previous survey by Frühwirth (1998). Covering more than 180 publications, this new survey pro...
متن کاملAs time goes by: Constraint Handling Rules - A survey of CHR research from 1998 to 2007
Constraint Handling Rules (CHR) is a high-level programming language based on multiheaded multiset rewrite rules. Originally designed for writing user-defined constraint solvers, it is now recognized as an elegant general purpose language. CHR-related research has surged during the decade following the previous survey by Frühwirth (1998). Covering more than 180 publications, this new survey pro...
متن کاملAs time goes by: Constraint Handling Rules
Constraint Handling Rules (CHR) is a high-level programming language based on multiheaded multiset rewrite rules. Originally designed for writing user-defined constraint solvers, it is now recognized as an elegant general purpose language. CHR-related research has surged during the decade following the previous survey by Frühwirth (1998). Covering more than 180 publications, this new survey pro...
متن کاملTheory and Practice of Constraint Handling Rules
Constraint Handling Rules (CHR) are our proposal to allow more exibility and application-oriented customization of constraint systems. CHR are a declarative language extension especially designed for writing user-deened constraints. CHR are essentially a committed-choice language consisting of multi-headed guarded rules that rewrite constraints into simpler ones until they are solved. In this b...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- CoRR
دوره abs/1703.10959 شماره
صفحات -
تاریخ انتشار 2017